1. Field of the Invention
This invention relates to an IC card reader/writer, ID method and program thereof, and more particularly to an IC card reader/writer, ID method and program that identifies an IC card using a time slot.
2. Description of the Related Art
Conventionally, a time slot method has been used in communication between a contactless IC card, which gives and receives data using an electromagnetic induction method, and a reader/writer, which identifies the contactless IC card. This is because when there is a plurality of contactless IC cards inside the communication area of the reader/writer at that same time and the plurality of contactless IC cards respond simultaneously to polling from the reader/writer, the response signals used for the responses collide and it becomes impossible for any of the contactless IC card to communicate properly with the reader/writer.
The time slot communication method is explained below.
(1) First, in order to confirm the existence of the contactless IC card, the IC card reader/writer (hereafter simply called the reader/writer) sends an initial response request command to the contactless IC card. The initial response request command contains a value of the number of time slots that is required to decide a specific time to send back a response for the initial response to the reader/writer, or a value that is required to calculate ‘the number of slots’.
(2) After receiving the initial response request command, the contactless IC card sends back the initial response, at a time slot, A time slot used for the response, which is a period between specific times, is decided by the card itself on the basis of the value of the number of time slots and a random numbers.
(3) If it is detected the collision of initial responses that appear when a plurality of contactless IC cards select a same time slot to response, the reader/writer resends an initial response request command.
(4) The reader/writer recognizes all the contactless IC cards by receiving initial responses from all the contactless IC cards without collision, and then the sequence for identifying the contactless IC card is completed.
The following explains in more detail about the above-mentioned processing according to FIG. 16 to FIG. 18. Besides, the following processing is concerned with the contactless IC card adjusted to the international standard ISO/IEC (International Organization For Standardization/International Electrotechnical Commission) 14443 for the proximity contactless IC card.
For instance, ISO/IEC14443 can be applied to a contactless Telephone Card. More specifically, it is a case where the three contactless IC cards 1601, 1602 and 1603 having a function of telephone card are simultaneously put into a reader/writer functioning as a payphone 1600, which is shown as FIG. 16.
The recognition system of the contactless IC card of ISO/IEC14443 executes the recognition of the contactless IC card according to the following procedure.
First, the reader/writer 1600 as the payphone sends an initial response request command. The initial response request command has a format shown in FIG. 18 and notifies the contactless IC card of the number of time slots (N) by means of three bits 1803 composed of bit 1 to bit 3, those bits included in 8 bits of PARAM 1802 composing the initial response command 1801. Besides, APf 1804 is a header indicating the initial response request command, while AFI 1805 indicates an adaptive class of the contactless IC card. And CRC (Cyclic Redundancy Check) 1806 is CRC from APf to PARAM.
Besides the contactless IC card responds at one of N slots of 1 to N, however, the following explanation is made on the basis that the number of time slots (N) is assumed to 4. That is to say, the contactless IC cards 1601 and 1602 select a time slot from 1 to 4 slots, and make the initial response.
In a first card ID process 1701 shown in FIG. 17, first, the reader/writer 1600 sends an initial response request command R1 [REQB] (1702). The contactless IC cards 1601 and 1602 both generate ‘1’ as a random number respectively, and the contactless IC card 1603 generates ‘2’ as a random number for the initial response request command R1 (1702). In this case, the contactless IC cards 1601, 1602 respond using responses [ATQB] A21, A31, respectively, shown in time slot 1 (1703). And the contactless IC card 1603 respond using response [ATQB] A41 shown in time slot 2 (1704). In the above case, both the contactless IC cards 1601, 1602 respond at the same time, so the reader/writer 1600 detects a collision of responses from the contactless IC cards in the time slot 1 (1703). Therefore, since the reader/writer 1600 cannot identify the contactless IC cards 1601, 1602, it restarts the ID process.
Next, in the second ID process 1705, the reader/writer 1600 sends an initial response request command R2 (1706). Here, supposing the contactless IC card 1601 and the contactless IC card 1603 generate ‘1’ as a random number respectively, and the contactless IC card 1602 generates ‘3’ as a random number, contactless IC cards 1601, 1603 respond using packet A22, A42, respectively, shown in time slot 1 (1707). Also, the contactless IC card 1602 responds using packet A32 shown in time slot 3 (1708). In this case, the reader/writer 1600 detects a collision between responses from the contactless IC cards 1601, 1603 in the time slot 1 (1707). Therefore, the reader/writer 1600 cannot identify the contactless IC cards 1601, 1603, so it restarts the ID process.
Next, in the third ID process 1709, the reader/writer 1600 sends an initial response request command R3 (1710). Here, suppose that contactless IC card 1601 generates ‘1’ as a random number, the contactless IC card 1602 generates ‘3’ as a random number and the contactless IC card 1603 generates ‘4’ as a random number. In this case, the contactless IC card 1601 responds using packet A23 shown in time slot 1 (1711), the contactless IC card 1602 responds using packet A33 shown in time slot 3 (1712) and the contactless IC card 1603 responds using packet A43 shown in time slot 4 (1713). Therefore, the reader/writer 1600 does not detect any collisions and so is able to identify all of the contactless IC cards and end the ID process. The process described above is a card ID process for identifying the contactless IC cards according to standard ISO/IEC 14443.
A period after the power has been supplied to the contactless IC cards until all of them are identified by the reader/writer is possible to assign an idling period+ready period
On the other hand, when all of the contactless IC cards have been identified, the reader/writer sends an ‘ATTRIB’ command to each of the contactless IC cards. This indicates that the contactless IC card can shift from the idling period+ready period to the active period, and after the contactless IC card receive the ‘ATTRIB’ command and have shifted to the active period, various kinds of communications with the reader/writer becomes possible. The contactless IC card that has shifted to the active period do not respond to the initial response request command. Here, when a ‘HALT’ command is received in the place of the ‘ATTRIB’ command, the contactless IC card shifts to the halt period, and does not perform communication with the reader/writer. In this case, when the reader/writer sends a ‘WAKE-UP’ command, the contactless IC card shifts to the active period and communication becomes possible.
Under the ISO/IEC 14443 standard, the period between when the contactless IC card receives the initial response request command and when it responds to the request at the time slot 1 is defined as 302 μsec, and the period of a time slot is as 2266 μsec. The period (μsec), from when the contactless IC card receives the initial request from the reader/writer 1600 to when the card sends the initial response, can be found according to the following equation (Equation 1).Period(μsec)=302 μsec+2266 μsec×(the selected number of slots−1)  Equation 1
There is the slot maker system as the other similar system to the time slot system. The slot marker system is a method in which, the reader/writer sends an initial response request command using the time slot method, and then sends a slot marker command at the time of the start of each slot, which indicates the start of the slot. Each IC card responds to the time slot specified by the reader/writer, so the aspect of identifying IC cards is essentially the same as in the time slot method.
Furthermore, a technique for avoiding a delay in the ID process of the contactless IC card due to a collision of responses is disclosed in Japanese laid-open publication No. 2000-298712.
In the technique disclosed in Japanese laid-open publication No. 2000-298712, the time slots for which collisions occurred are counted by checking collisions of responses for each time slot and the number of time slots is increased or decreased based on the number of time slots for which collisions occurred.
For the contactless IC card (contactless IC card that conform to international standard ISO/IEC 14443) that uses the aforementioned time slot method, when the contactless IC card responds to the reader/writer, the contactless IC card itself uses a random number and selects the time slot. Therefore, in the case that the random numbers generated by a plurality of the contactless IC cards are the same, the selected time slot becomes the same and the responses always collide. In this case, the reader/writer must send the response request command again and perform the ID process for identifying the contactless IC card, which as a result leads to a delay in identifying the contactless IC card.
Moreover, in the technique disclosed in Japanese laid-open publication No. 2000-298712, by increasing the number of time slots specified by the reader/writer based on the number of time slots for which collisions occurred, the probability that the contactless IC card will select the same time slot decreases. However, in the technique described above, it is necessary to determine whether or not there was a collision of responses for each individual time slot, and then count and store in memory the number of collisions, so the construction of the reader/writer becomes complicated. Also, the number of time slots is changed (increased) and the ID process starts, and when the number of collisions decreases even though the number of contactless IC cards is not changed, the next time, the number of time slots is decreased and the ID process is performed, so there is a problem in that the frequency of collisions increases again and the time required for the ID process becomes longer.
The above-mentioned problem, that it takes a lot of time to complete the recognition, appears remarkably in the system such as a ticket examining machine at a wicket, wherein the user has to let the reader/writer recognize the contactless IC card without stopping. That is to say, if the recognition of the contactless IC card is delayed, the use has to stop and it becomes an obstacle in the utilization of the system.
Moreover, in the future it is expected that various systems that take advantage of the convenience of the contactless IC card will be developed in various different fields. In other words, in time, it is expected that the number of the contactless IC cards possessed by a single user (for example carried in a user's wallet) will increase. Under these circumstances, the time required for performing the ID process will become even longer and the problem of delay will become even worse. Therefore, from the aspect of increasing the number of years of service that a system can be used, it is necessary to prepare for this kind of situation beforehand.
On the other hand, if it is possible to recognize the contactless IC card speedier than ever, the system will be able to be applied to a speedier mobile device. For this purpose, it has been expected to improve the speed-up of the recognition and the processing.